This invention relates generally to packet-based communications, and more particularly, to roaming techniques for voice calls across a packet switched network.
In traditional circuit based (PSTN) telephony networks, calls are established by creating a dedicated circuit between one geographic location and another location. As such, once assigned, a telephone number typically equates to an address at a physical location. In this way, a telephone number in a circuit-based network has traditionally been associated with a physical location as well as with a particular user (e.g., the home telephone number of User A, or the work telephone number of User B). When a call request for a particular number in a circuit network was received, therefore, the phone at that particular location would ring and the call would be connected.
Various methods of rerouting calls in a circuit network have been developed, such as the well-known call-forwarding service. However, these services have typically involved forwarding a call from one telephone number to another telephone number for the convenience of a recipient user. When a call is forwarded using such a service, the destination address of the call is typically altered and the call is then rerouted using the new destination address.
Roaming is a feature that is used in telephony networks to describe the ability of a user to transit across different geographic areas and still receive calls at the user's dialed number. Unlike call forwarding, which as described above involves forwarding a call from one telephone number to another telephone number, the destination number in a roaming telephone stays the same throughout the call setup process. As such, since circuit telephony networks have telephone numbers assigned to fixed geographic areas, such a roaming feature is typically not available in those networks. In fact, roaming is more typically associated with a wireless telephony network where a user of a wireless telephone is able to transit from one geographic area to another while still receiving calls directly at the telephone number associated with the wireless telephone. Such a roaming capability in wireless networks is typically facilitated by a process whereby the wireless telephone registers with the service provider network. Specifically, when the wireless telephone moves from one geographic area to another, that telephone will register with the service provider network. Thus, when a call having a dialed number of the wireless telephone is received by the service provider network, that call can be forwarded to the appropriate geographic area to facilitate call setup. One skilled in the art will recognize that such wireless roaming is transparent to both the called party and the calling party and that no special setup is required to achieve such a roaming functionality.
Placing voice calls over packet networks, such as an Internet Protocol (IP) network is becoming popular due to the potential increases in flexibility and cost savings that are available to both consumers and telecommunication service providers. Such calls are typically referred to as VoIP calls. Telecommunication service providers have developed networks to provide VoIP services that function to receive call requests from users, provide services and applications to these calls, and to then route calls to an end destination. VoIP calls may originate from either an analog or IP telephone. If an analog phone is used, it must typically be connected to a telephony adapter (TA) that converts the analog voice signals into data packets that are then forwarded to a destination in the IP network. In such an implementation, the TA will be assigned an IP address that serves as the origination address for outgoing voice packets and the destination address for incoming voice packets. Alternatively, if an IP telephone is used, it may contain internal functionality to convert the voice signals to packets, thus eliminating the requirement for a TA. In this implementation, the telephone itself is assigned an IP address that serves as the origination and destination address for outgoing and incoming voice packets, respectively.
To place a VoIP call, a user will dial a telephone number associated with a desired destination. That number is then transmitted to the service provider network where the dialed number is translated into a destination address. This translation takes place, for example, by referring to a registration database that maps telephone numbers to destination addresses such as destination IP address. Any desired services are provided to the call and a call request is then forwarded to the destination terminal in order to connect the call with the desired destination.